<?php
namespace App\Http\Controllers\AdminApi;
use App\Model\UserTable;
use App\Repository\BaseController\ApiController;
use App\Repository\Common\ConstTable;
use App\Repository\Sys\JsonRespose;
use App\Repository\Sys\Str;
use App\Repository\Sys\Sys;

//用户管理
class UserController extends ApiController{
	/**
     * @api {get} /adminapi/user/user-list 用户列表
     * @apiGroup Admin
     * @apiDescription  说明:
     * 	未处理字段
     *	team_id 所属球队ID+
     * 	team_id_text 所属球队名称
     *	vip_text vip等级文字
     *	num_booking 订场次数
     *	num_cancel 取消次数
     * 
     * @apiParam {Int} page --
     * @apiParam {Int} page_num --
     * @apiParam {Int} title  手机号或昵称
     *
     * @apiSuccessExample {json} Success-Response:
     *
     * {
     * "code": 1,
     * "msg": "操作成功!",
     * "data": {
     * "count": "1",
     * "list": [
     * {
     * "id":"1", --用户ID
     * "phone":"13554239409", --手机号
     * "img":"", --用户头像
     * "nickname":"qinzhiyong", --昵称
     * "birthday":"1993-03-24", --生日
     * "pwd":"", --密码
     * "status":"", --1启用 2禁用 -1删除
     * "team_id":"1,2,3", --所属球队ID
     * "team_id_text":"1,2,3", --所属球队名称
     * "vip":"1", --vip等级
     * "vip_text":"1", --vip等级文字
     * "integral":"300", --会员积分
     * "reg_time":"0000-00-00 00:00:00", --注册时间
     * "team_captain_id":"1", --球对队长ID
     * "num_booking":"1", --订场次数
     * "num_cancel":"1", --取消次数
     * }
     * ],
     * "page": 1
     * }
     * }
     */
    public function getUserList(){
    	$page = \Request::get('page',1);
        $limit = \Request::get('page_num',10);
        $title = \Request::get('title');
        return JsonRespose::done(UserTable::getUserList($page,$limit,$title));
    }
    
    /**
     * @api {get} /adminapi/user/user-info 用户详情
     * @apiGroup Admin
     * @apiDescription  说明: 无
     *
     * @apiParam {Int} id 用户ID
     *
     * @apiSuccessExample {json} Success-Response:
     * {
     * "code": 1,
     * "msg": "操作成功!",
     * "data": {
	 * "id":"1", --用户ID
	 * "phone":"13554239409", --手机号
	 * "img":"", --用户头像
	 * "nickname":"qinzhiyong", --昵称
	 * "birthday":"1993-03-24", --生日
	 * "pwd":"", --密码
	 * "status":"", --1启用 2禁用 -1删除
	 * "team_id":"1,2,3", --所属球队ID
	 * "team_id_text":"1,2,3", --所属球队名称
	 * "vip":"1", --vip等级
	 * "vip_text":"1", --vip等级文字
	 * "integral":"300", --会员积分
	 * "reg_time":"0000-00-00 00:00:00", --注册时间
	 * "team_captain_id":"1", --球对队长ID
	 * "num_booking":"1", --订场次数
	 * "num_cancel":"1", --取消次数
	 * "age":"1", --年龄
     * }
     * }
     */
    public function getUserInfo(){
        $id = \Request::get('id');
        return JsonRespose::done(UserTable::getUserInfo($id));
    }
    
    /**
     * @api {get} /adminapi/user/user-status 用户状态修改
     * @apiGroup Admin
     * @apiDescription  说明: 无
     *
     * @apiParam {Int} id 用户ID
     * @apiParam {Int} status 修改的状态
     *
     * @apiSuccessExample {json} Success-Response:
     * {
     * "code": 1,
     * "msg": "操作成功!",
     * "data": {
	 * "id":"1", --用户ID
     * }
     * }
     */
    public function postUserStatus(){
        $id = \Request::get('id');
        $status = \Request::get('status');
        //取得当前数据
        $res = UserTable::ORM()->where('id', $id)->update(['status' => $status]);
        if ($res) {
            return JsonRespose::success();
        } else {
            return JsonRespose::fail();
        }
    }

    /**
     * @api {get} /adminapi/user/integral-list 积分列表
     * @apiGroup Admin-User
     * @apiDescription  说明: 无
     *
     *
     * @apiSuccessExample {json} Success-Response:
     *
     * {
    "code": 1,
    "msg": "操作成功!",
    "data": {
    "count": "2",
    "integral": "0",
    "list": [
    {
    "integral": 1,
    "dateline": "1970-01-01 08:00",
    "desc": "应战",
    "money": "1.00",
    "order_id": "2"
    },
    {
    "integral": 1,
    "dateline": "1970-01-01 08:00",
    "desc": "应战",
    "money": "1.00",
    "order_id": "1"
    }
    ],
    "page": 1
    }
    }
     */
    public function getIntegralList()
    {

        $page = \Request::get('page', 1);
        $limit = \Request::get('page_num', 10);
        $uid = \Request::get('id');

        return JsonRespose::done(UserTable::integralList($uid,$page,$limit));
    }

}